索引
这描述了 Events 部分的结构。 |
---|
概述 |
版本化变更 |
Randomize Node |
Sequence Node |
触发器 |
添加组件组 |
删除组件组 |
设置实体属性 |
Queue Command |
这描述了 Events 部分的结构。
返回顶部概述
实体事件可以通过 'sequence' 和 'randomize' 节点的组合来构建。 'sequence' 节点是数组节点,将按顺序从第一个元素到最后一个元素执行所有条目。 'randomize' 节点是数组节点,它们将根据权重选择一个条目来执行。 也可以在 'sequence' 和 'randomize' 节点中添加 'filters' 以限制执行。 在 'randomize' 和 'sequence ' 节点中,您可以指定一些作。 'trigger'、'filters'、'add' 和 'remove'。 您可以在文档的 'Filters' 部分阅读 'filters' 。 'trigger' 可用于在命中事件时触发其他实体事件。 'add' 可用于将组件组添加到实体中。 'remove' 可用于从实体中删除组件组。 收到事件时,将立即确定该事件的影响,但这些影响会发生变化 不会应用于实体,直到实体在游戏的服务器端进行更新。这意味着 'sequence' 数组中较晚条目中的过滤器不会看到该数组中较早条目的变化。 这也意味着,当一个实体向另一个实体发送事件时,它可能会对同一实体生效 游戏刻或下一刻,具体取决于目标实体是否已更新。 返回顶部版本化变更
需要 '1.19.20' 或更高版本的 'format_version' 才能正确评估实体事件定义上指定的过滤器 在事件的根级别,即不在 'sequence' 或 'randomize' 节点下的任何过滤器。 版本较低的内容将使用旧行为,即忽略根级别过滤器。 返回顶部Randomize Node
'randomize' 节点是一个数组节点,它将根据权重选择一个要执行的条目。 如果未指定权重,则节点的权重将为 1.0。 如果您在一个节点中添加权重 4.0,在另一个节点中添加权重 8.0,则这些节点将分别有 33.33% (4 / (4 + 8)) 和 66.66% (8 / (4 + 8)) 的执行机会。 例:Sequence Node
例:触发器
命中时触发其他实体事件。例如,您可以使用 minecraft:entity_spawned 中的 randomize 节点来选择成人或婴儿事件来添加组件组。 例:添加组件组
将组件组添加到当前实体。这些组必须在文件的 'component_groups' 部分中定义。由于实体只能有每种类型的一个组件处于活动状态,因此正在添加的组中的任何组件都将替换以前添加的组件。此外,添加已处于活动状态的组件组将导致这些组件重新初始化。对于某些类型的组件,如 minecraft:is_baby,重新初始化已经激活的组件没有效果,但对于其他组件类型,关联的逻辑将重新开始。例如,一个已经添加的 minecraft:timer 如果再次添加,它将重新开始其计时逻辑。 例:删除组件组
从当前实体中删除组件组。这可以是您在文件的 'component_groups' 部分中定义的任何组。 例:设置实体属性
设置实体属性的值。必须在文件的 'properties' 部分中定义该属性。 例:Queue Command
将要在实体上运行的命令排队。该命令将在下一刻内运行,除非该实体已被删除。 例: